package 接口;
/*
    接口用关键字interface修饰
        public interface 接口名{}
    类实现接口用implements表示
        public class 类名 implements 接口名{}
    接口不能实例化
        参照多态的方式，通过实现类对象实例化，这叫接口多态
        多态的形式：具体类多态，抽象类多态，接口多态
        多态前提：有继承或者实现关系；有方法重写；有父（类/接口）引用指向（子/实现）类对象
    接口的实现类
        要么重写接口中的所有抽象方法
        要么是抽象类

    接口的成员特点
        成员变量：只能是常量，默认修饰符public static final
        构造方法：没有构造方法；一个类默认继承自Object类
        成员方法：只能是抽象方法，默认修饰符public abstract

    接口和类的关系
        类和类：继承关系（只能单继承，多层继承）
        类和接口：实现关系，可以多实现，还可以在继承一个类的同时实现多个实现
        接口和接口：继承关系，可以单继承，也可以多继承

    抽象类和接口区别
        成员区别：
            抽象类：变量，常量，有构造方法，由抽象方法，也有非抽象方法
            接口：常量，抽象方法
        关系区别：
            类与类：继承，单继承
            类与接口：实现，可以单实现，也可以多实现
            接口与接口：继承，单继承，多继承
        设计理念区别：
            抽象类：对类抽象，包括属性，行为
            接口：对行为抽象，主要是行为
 */
public class JumppingDemo {
    public static void main(String[] args) {
        //Jumpping j=new Jumpping();

        Jumpping j=new Cat();
        j.jump();
    }
}
